    mesh.setNumVerts(34);
    mesh.setNumFaces(49);
    mesh.setVert(0, size * Point3(-0.707107,0.707107,0.000000));
    mesh.setVert(1, size * Point3(0.000000,0.707107,0.000000));
    mesh.setVert(2, size * Point3(0.707107,0.707107,0.000000));
    mesh.setVert(3, size * Point3(-0.707107,-0.707107,0.000000));
    mesh.setVert(4, size * Point3(0.000000,-0.707107,0.000000));
    mesh.setVert(5, size * Point3(0.707107,-0.707107,0.000000));
    mesh.setVert(6, size * Point3(0.707107,-0.000000,0.000000));
    mesh.setVert(7, size * Point3(0.000000,0.000000,-0.669280));
    mesh.setVert(8, size * Point3(-0.707107,-0.000000,0.000000));
    mesh.setVert(9, size * Point3(0.000000,-0.000000,0.669281));
    mesh.setVert(10, size * Point3(-0.387674,0.040373,-0.120724));
    mesh.setVert(11, size * Point3(0.377855,0.040373,-0.120724));
    mesh.setVert(12, size * Point3(-0.387674,-0.050282,-0.120724));
    mesh.setVert(13, size * Point3(0.377855,-0.050282,-0.120724));
    mesh.setVert(14, size * Point3(-0.387674,0.040373,0.241895));
    mesh.setVert(15, size * Point3(0.377855,0.040373,0.241895));
    mesh.setVert(16, size * Point3(-0.387674,-0.050282,0.241895));
    mesh.setVert(17, size * Point3(0.377855,-0.050282,0.241895));
    mesh.setVert(18, size * Point3(0.254279,0.010810,-0.332996));
    mesh.setVert(19, size * Point3(0.301419,0.010810,-0.332996));
    mesh.setVert(20, size * Point3(0.254279,-0.018653,-0.332996));
    mesh.setVert(21, size * Point3(0.301419,-0.018653,-0.332996));
    mesh.setVert(22, size * Point3(0.254279,0.010810,-0.120864));
    mesh.setVert(23, size * Point3(0.301419,0.010810,-0.120864));
    mesh.setVert(24, size * Point3(0.254279,-0.018653,-0.120864));
    mesh.setVert(25, size * Point3(0.301419,-0.018653,-0.120864));
    mesh.setVert(26, size * Point3(-0.310152,0.010810,-0.332996));
    mesh.setVert(27, size * Point3(-0.263012,0.010810,-0.332996));
    mesh.setVert(28, size * Point3(-0.310152,-0.018653,-0.332996));
    mesh.setVert(29, size * Point3(-0.263012,-0.018653,-0.332996));
    mesh.setVert(30, size * Point3(-0.310152,0.010810,-0.120864));
    mesh.setVert(31, size * Point3(-0.263012,0.010810,-0.120864));
    mesh.setVert(32, size * Point3(-0.310152,-0.018653,-0.120864));
    mesh.setVert(33, size * Point3(-0.263012,-0.018653,-0.120864));
    mesh.faces[0].setVerts(7,8,1);
    mesh.faces[0].setEdgeVisFlags(1,1,1);
    mesh.faces[0].setSmGroup(20);
    mesh.faces[1].setVerts(7,6,4);
    mesh.faces[1].setEdgeVisFlags(1,1,1);
    mesh.faces[1].setSmGroup(20);
    mesh.faces[2].setVerts(4,8,7);
    mesh.faces[2].setEdgeVisFlags(1,1,1);
    mesh.faces[2].setSmGroup(0);
    mesh.faces[3].setVerts(6,7,4);
    mesh.faces[3].setEdgeVisFlags(1,1,1);
    mesh.faces[3].setSmGroup(0);
    mesh.faces[4].setVerts(7,1,6);
    mesh.faces[4].setEdgeVisFlags(1,1,1);
    mesh.faces[4].setSmGroup(0);
    mesh.faces[5].setVerts(8,7,1);
    mesh.faces[5].setEdgeVisFlags(1,1,1);
    mesh.faces[5].setSmGroup(0);
    mesh.faces[6].setVerts(8,9,1);
    mesh.faces[6].setEdgeVisFlags(1,1,0);
    mesh.faces[6].setSmGroup(20);
    mesh.faces[7].setVerts(6,9,4);
    mesh.faces[7].setEdgeVisFlags(1,1,0);
    mesh.faces[7].setSmGroup(20);
    mesh.faces[8].setVerts(8,4,9);
    mesh.faces[8].setEdgeVisFlags(1,1,1);
    mesh.faces[8].setSmGroup(0);
    mesh.faces[9].setVerts(6,9,4);
    mesh.faces[9].setEdgeVisFlags(1,1,1);
    mesh.faces[9].setSmGroup(0);
    mesh.faces[10].setVerts(1,9,6);
    mesh.faces[10].setEdgeVisFlags(1,1,1);
    mesh.faces[10].setSmGroup(0);
    mesh.faces[11].setVerts(8,9,1);
    mesh.faces[11].setEdgeVisFlags(1,1,1);
    mesh.faces[11].setSmGroup(0);
    mesh.faces[12].setVerts(8,1,9);
    mesh.faces[12].setEdgeVisFlags(1,1,1);
    mesh.faces[12].setSmGroup(0);
    mesh.faces[13].setVerts(12,10,13);
    mesh.faces[13].setEdgeVisFlags(1,0,1);
    mesh.faces[13].setSmGroup(2);
    mesh.faces[14].setVerts(11,13,10);
    mesh.faces[14].setEdgeVisFlags(1,0,1);
    mesh.faces[14].setSmGroup(2);
    mesh.faces[15].setVerts(15,14,17);
    mesh.faces[15].setEdgeVisFlags(1,0,1);
    mesh.faces[15].setSmGroup(4);
    mesh.faces[16].setVerts(16,17,14);
    mesh.faces[16].setEdgeVisFlags(1,0,1);
    mesh.faces[16].setSmGroup(4);
    mesh.faces[17].setVerts(11,10,15);
    mesh.faces[17].setEdgeVisFlags(1,0,1);
    mesh.faces[17].setSmGroup(20);
    mesh.faces[18].setVerts(14,15,10);
    mesh.faces[18].setEdgeVisFlags(1,0,1);
    mesh.faces[18].setSmGroup(20);
    mesh.faces[19].setVerts(13,11,17);
    mesh.faces[19].setEdgeVisFlags(1,0,1);
    mesh.faces[19].setSmGroup(10);
    mesh.faces[20].setVerts(15,17,11);
    mesh.faces[20].setEdgeVisFlags(1,0,1);
    mesh.faces[20].setSmGroup(10);
    mesh.faces[21].setVerts(12,13,16);
    mesh.faces[21].setEdgeVisFlags(1,0,1);
    mesh.faces[21].setSmGroup(20);
    mesh.faces[22].setVerts(17,16,13);
    mesh.faces[22].setEdgeVisFlags(1,0,1);
    mesh.faces[22].setSmGroup(20);
    mesh.faces[23].setVerts(10,12,14);
    mesh.faces[23].setEdgeVisFlags(1,0,1);
    mesh.faces[23].setSmGroup(40);
    mesh.faces[24].setVerts(16,14,12);
    mesh.faces[24].setEdgeVisFlags(1,0,1);
    mesh.faces[24].setSmGroup(40);
    mesh.faces[25].setVerts(20,18,21);
    mesh.faces[25].setEdgeVisFlags(1,0,1);
    mesh.faces[25].setSmGroup(2);
    mesh.faces[26].setVerts(19,21,18);
    mesh.faces[26].setEdgeVisFlags(1,0,1);
    mesh.faces[26].setSmGroup(2);
    mesh.faces[27].setVerts(23,22,25);
    mesh.faces[27].setEdgeVisFlags(1,0,1);
    mesh.faces[27].setSmGroup(4);
    mesh.faces[28].setVerts(24,25,22);
    mesh.faces[28].setEdgeVisFlags(1,0,1);
    mesh.faces[28].setSmGroup(4);
    mesh.faces[29].setVerts(19,18,23);
    mesh.faces[29].setEdgeVisFlags(1,0,1);
    mesh.faces[29].setSmGroup(20);
    mesh.faces[30].setVerts(22,23,18);
    mesh.faces[30].setEdgeVisFlags(1,0,1);
    mesh.faces[30].setSmGroup(20);
    mesh.faces[31].setVerts(21,19,25);
    mesh.faces[31].setEdgeVisFlags(1,0,1);
    mesh.faces[31].setSmGroup(10);
    mesh.faces[32].setVerts(23,25,19);
    mesh.faces[32].setEdgeVisFlags(1,0,1);
    mesh.faces[32].setSmGroup(10);
    mesh.faces[33].setVerts(20,21,24);
    mesh.faces[33].setEdgeVisFlags(1,0,1);
    mesh.faces[33].setSmGroup(20);
    mesh.faces[34].setVerts(25,24,21);
    mesh.faces[34].setEdgeVisFlags(1,0,1);
    mesh.faces[34].setSmGroup(20);
    mesh.faces[35].setVerts(18,20,22);
    mesh.faces[35].setEdgeVisFlags(1,0,1);
    mesh.faces[35].setSmGroup(40);
    mesh.faces[36].setVerts(24,22,20);
    mesh.faces[36].setEdgeVisFlags(1,0,1);
    mesh.faces[36].setSmGroup(40);
    mesh.faces[37].setVerts(28,26,29);
    mesh.faces[37].setEdgeVisFlags(1,0,1);
    mesh.faces[37].setSmGroup(2);
    mesh.faces[38].setVerts(27,29,26);
    mesh.faces[38].setEdgeVisFlags(1,0,1);
    mesh.faces[38].setSmGroup(2);
    mesh.faces[39].setVerts(31,30,33);
    mesh.faces[39].setEdgeVisFlags(1,0,1);
    mesh.faces[39].setSmGroup(4);
    mesh.faces[40].setVerts(32,33,30);
    mesh.faces[40].setEdgeVisFlags(1,0,1);
    mesh.faces[40].setSmGroup(4);
    mesh.faces[41].setVerts(27,26,31);
    mesh.faces[41].setEdgeVisFlags(1,0,1);
    mesh.faces[41].setSmGroup(20);
    mesh.faces[42].setVerts(30,31,26);
    mesh.faces[42].setEdgeVisFlags(1,0,1);
    mesh.faces[42].setSmGroup(20);
    mesh.faces[43].setVerts(29,27,33);
    mesh.faces[43].setEdgeVisFlags(1,0,1);
    mesh.faces[43].setSmGroup(10);
    mesh.faces[44].setVerts(31,33,27);
    mesh.faces[44].setEdgeVisFlags(1,0,1);
    mesh.faces[44].setSmGroup(10);
    mesh.faces[45].setVerts(28,29,32);
    mesh.faces[45].setEdgeVisFlags(1,0,1);
    mesh.faces[45].setSmGroup(20);
    mesh.faces[46].setVerts(33,32,29);
    mesh.faces[46].setEdgeVisFlags(1,0,1);
    mesh.faces[46].setSmGroup(20);
    mesh.faces[47].setVerts(26,28,30);
    mesh.faces[47].setEdgeVisFlags(1,0,1);
    mesh.faces[47].setSmGroup(40);
    mesh.faces[48].setVerts(32,30,28);
    mesh.faces[48].setEdgeVisFlags(1,0,1);
    mesh.faces[48].setSmGroup(40);
